As more new and diverse types of computing devices become increasingly popular, the development of applications for such devices becomes increasingly challenging. As an example, many mobile devices now commonly employ hybrid mobile applications, which are a cross between native mobile device applications and web-based applications. In particular, similar to web-based applications, hybrid mobile applications may employ a common code base that works across multiple different platforms and/or operating systems. Additionally, similar to native mobile device applications, hybrid mobile applications may interact with a variety of native device resources such as the camera, notifications, contacts, calendar and various communication capabilities. Hybrid mobile applications typically execute the common code base from within a native code container that provides access to the native resources on the mobile device.
Hybrid mobile application functionality may be developed by executing test code directly on mobile devices. This enables, for example, the hybrid mobile application functionality to interact with native mobile device resources and to be tested in an environment that is similar to the environment in which the final developed functionality will eventually be used. However, the native code containers on the mobile devices typically provide only limited capabilities for testing and development of hybrid mobile applications. For example, to debug an error resulting from hybrid mobile application test code execution, the native code containers often require a developer to repeatedly perform procedures such as insertion of log messages, recompilation of code and generation of printouts. Each instance of recompilation of code may take an average of three to four minutes or longer in certain circumstances.